W
Die wichtigste Lektion für dich, @Dieterstyx, sollte sein: schalte IMMER Warnungen deines Compilers ein. Compiler sind klug und erkennen oftmals unsauberen oder fragwürdigen Code automatisch. Nur: dein Code ist ja gültig (Zuweisung + Ergebnis der Zuweisung, also 5, auf bool testen), daher compiliert dein Code.
Wenn du mit gcc oder clang arbeitest, nimm mindestens -Wall -Wextra als Switches, in VS /W4. Dann hätte dir der Compiler folgendes gesagt (am Beispiel clang):
<source>:9:12: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
if(Raetsel=5) {
~~~~~~~^~
<source>:9:12: note: place parentheses around the assignment to silence this warning
if(Raetsel=5) {
^
( )
<source>:9:12: note: use '==' to turn this assignment into an equality comparison
if(Raetsel=5) {
^
==